package com.up.upzl.biz;

import java.util.HashMap;
import java.util.Map;

import org.junit.Before;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;

import com.up.upzl.UpApplicationTests;
import com.up.upzl.biz.domain.Area;
import com.up.upzl.biz.domain.BusinessArea;
import com.up.upzl.biz.repository.AreaRepository;
import com.up.upzl.biz.repository.BusinessAreaRepository;

import lombok.extern.slf4j.Slf4j;

/**
 * 商圈
 * 
 * @author geeks
 *
 */
@Slf4j
public class BusinessAreaT extends UpApplicationTests {

	@Autowired
	private BusinessAreaRepository businessAreaRepository;

	@Autowired
	private AreaRepository areaRepository;

	private Map<String, String> businessAreas = new HashMap<>();

	@Before
	public void initDistrict() {
		businessAreas.put("朝阳区",
				"安贞 奥林匹克公园 百子湾 北工大 北苑 北沙滩 常营 朝阳公园 朝阳门外 大山子 大望路 定福庄 东坝 东大桥 豆各庄 东直门外 垡头 国贸 高碑店 管庄 国展 工体 红庙 华威 惠新西街 黑庄户乡 劲松 酒仙桥 健翔桥 金盏乡 建国门外 来广营 柳芳 南沙滩 农展馆 潘家园 三元桥 芍药居 十八里店 石佛营 十里堡 双井 双桥 四惠 三里屯 首都机场 十里河 太阳宫 团结湖 甜水园 望京东 望京西 西坝河 亚运村小营 亚运村 燕莎 朝青 其它");
		businessAreas.put("海淀区",
				"安宁庄 白石桥 厂洼 定慧寺 公主坟 甘家口 航天桥 其它 军博 马甸 马连洼 牡丹园 清河 上地 世纪城 双榆树 四季青 苏州桥 苏家坨镇 上庄 田村 万柳 魏公村 五道口 五棵松 万寿路 西二旗 西三旗 小西天 学院路 西北旺 颐和园 圆明园 玉泉路 皂君庙 知春路 中关村 紫竹桥 其它");
		businessAreas.put("东城区", "安定门 北京站 崇文门 灯市口 东单 东四 东直门内 东花市 广渠门 和平里 交道口 金宝街 建国门内 前门 天坛 王府井 雍和宫 永定门外 朝阳门内 左安门 其它");
		businessAreas.put("西城区",
				"白纸坊 车公庄 长椿街 德胜门 阜成门 复兴门 官园 广安门 和平门 积水潭 金融街 马连道 木樨地 什刹海 天宁寺 天桥 陶然亭 西单 西四 西直门 新街口 宣武门 月坛 其它");
		businessAreas.put("丰台区",
				"北大地 菜户营 草桥 成寿寺 大红门 方庄 和义 花乡 角门 看丹桥 科技园区 丽泽桥 六里桥 卢沟桥 马家堡 木樨园 蒲黄榆 青塔 七里庄 宋家庄 石榴园 五里店 西罗园 洋桥 玉泉营 右安门外 赵公口 其它");
		businessAreas.put("石景山区", "八角 古城 老山 鲁谷 苹果园 三家店 杨庄 其它");
		businessAreas.put("大兴区", "高米店 观音寺 黄村 旧宫 芦城乡 礼贤镇 庞各庄 青云店镇 清源 生物医药基地 天宫院 魏善庄镇 西红门 新宫 亦庄 瀛海镇 榆垡镇 长子营镇 枣园 其它");
		businessAreas.put("通州区",
				"北关 次渠 大杜社镇 果园 甘棠镇 九棵树 漷县 梨园 潞苑 郎府镇 临河里 马驹桥 乔庄 通州北苑 台湖镇 武夷花园 新华大街 徐辛庄镇 西集镇 玉桥 于家务回族乡 其它");
		businessAreas.put("顺义区", "北小营镇 北务镇 大孙各庄镇 后沙峪 机场南楼 李桥 马坡 牛栏山镇 南彩 顺义城 顺义机场 石门 天竺 杨镇 赵全营镇 张镇 中央别墅区 其它");
		businessAreas.put("昌平区", "北小营镇 北务镇  大孙各庄镇  后沙峪  机场南楼  李桥  马坡  牛栏山镇 南彩  顺义城 顺义机场 石门  天竺  杨镇  赵全营镇 张镇 中央别墅区 其它");
		businessAreas.put("房山区", "其它");
		businessAreas.put("门头沟区", "其它");
		businessAreas.put("延庆县", "其它");
		businessAreas.put("怀柔区", "其它");
		businessAreas.put("密云县", "其它");
		businessAreas.put("平谷区", "其它");
	}

	/**
	 * 导入商圈
	 */
	@Test
	public void existsByIdAndCitySitesSiteCode() {
		log.info("Mission start ...");
		businessAreas.entrySet().forEach(kv -> {
			Area area = areaRepository.findByNameLike(kv.getKey());
			log.info("===== > {}", area.getId());
			String[] areas = kv.getValue().split(" ");

			for (String areaTemp : areas) {
				BusinessArea businessArea = new BusinessArea();
				businessArea.setArea(area);
				businessArea.setName(areaTemp);
				businessAreaRepository.save(businessArea);
			}
		});
		log.info("Mission complete ...");
	}

}
